#include "ScnsLs138.c.h"
#include "stm32h750xx.h"

#if defined(SCNS_LS138_ENABLE)&&SCNS_LS138_ENABLE==1

static const struct
{
    GPIO_TypeDef*GPIOx;
    uint16_t GPIO_Pin;
}ptx[SCNS_LS138_MAX][4]={
    {
        {.GPIOx=LS138_A0_GPIO_Port,.GPIO_Pin=LS138_A0_Pin},
        {.GPIOx=LS138_A1_GPIO_Port,.GPIO_Pin=LS138_A1_Pin},
        {.GPIOx=LS138_A2_GPIO_Port,.GPIO_Pin=LS138_A2_Pin},
        {.GPIOx=LS138_E1_GPIO_Port,.GPIO_Pin=LS138_E1_Pin},
    }
};

void scnsLs138BitSet(ScnsLs138Enum ls1N,uint8 bit,uint8 value)
{
    if(bit<4)
    {
        ptx[ls1N][bit].GPIOx->BSRR=(value)?(ptx[ls1N][bit].GPIO_Pin):(ptx[ls1N][bit].GPIO_Pin<<16);
    }
}

#endif
